﻿// <copyright file="IHitTestService.cs" company="Ucaya">
// </copyright>
// <author>Ucaya</author>

namespace KinectExtensions.Services
{
    #region

    using System;
    using System.Windows;

    using KinectExtensions.Nui;

    #endregion

    /// <summary>
    ///   The i hit test service.
    /// </summary>
    public interface IHitTestService
    {
        #region Public Events

        /// <summary>
        ///   The hit may have changed.
        /// </summary>
        event EventHandler HitMayHaveChanged;

        #endregion

        #region Public Methods

        /// <summary>
        ///   The hit test hand.
        /// </summary>
        /// <param name = "source">
        ///   The source.
        /// </param>
        /// <param name = "handPosition">
        ///   The hand position.
        /// </param>
        /// <returns>
        /// </returns>
        HitResult HitTestHand(FrameworkElement source, HandPosition handPosition);

        /// <summary>
        ///   The hit test hand master.
        /// </summary>
        /// <param name = "source">
        ///   The source.
        /// </param>
        /// <returns>
        /// </returns>
        HitResult HitTestHandMaster(FrameworkElement source);

        #endregion
    }
}